#pragma once
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>

typedef int DataType;
typedef struct SListNode
{
	DataType data;
	struct SListNode* next;
}SLNode;


void SL_Print(SLNode* phead);
SLNode* SLbuyNode(DataType x);
void SLPushBack(SLNode** pphead, DataType data);
void SLPushFrnt(SLNode** pphead, DataType data);
void SLPopBack(SLNode** pphead);
void SLPopFront(SLNode** pphead);
SLNode* SLFind(SLNode* phead, DataType data);
void SLInsert(SLNode** pphead, SLNode* pos, DataType data);
void SLInsertAfter(SLNode* pos, DataType data);
void Delete(SLNode** pphead, SLNode* pos);
void SLEraseAfter(SLNode** pphead, SLNode* pos);
void SLEraseFront(SLNode** pphead, SLNode* pos);
void SListDestroy(SLNode** pphead);